﻿using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CapaDatos
{
    public class datFactory
    {
        public List<List<String>> textos = new List<List<String>>();

        #region singleton
        private static readonly datFactory _instancia = new datFactory();
        public static datFactory Instancia
        {
            get { return datFactory._instancia; }
        }
        #endregion

        public datAnonimo CrearObjeto(String obj)
        {
            datAnonimo objeto = null;
            //LeerDatos();
            switch (/*ObjetoACrear(obj)*/obj)
            {
                case "datAula":
                    //objeto = new datAula();
                    break;
                case "datCurso":
                    //objeto = new datCurso();
                    break;
                case "datDocdate":
                    //objeto = new datDocdate();
                    break;
                case "datGrupo":
                    //objeto = new datGrupo();
                    break;
                case "datHorario":
                    //objeto = new datHorario();
                    break;
                case "datUsuario":
                    objeto = new datUsuario();
                    break;

            }
            return objeto;
        }

        private void LeerDatos()
        {
            StreamReader reader = new StreamReader("txtFabrica/txtFabricaDatos.csv");
            while (true)
            {
                String linea = reader.ReadLine();
                if (linea == null)
                {
                    reader.Close();
                    break;
                }
                List<String> fila = new List<String>();
                fila.AddRange(linea.Split(','));
                textos.Add(fila);
            }
        }

        private String ObjetoACrear(String obj)
        {
            String objeto = null;
            for (int i = 0; i < textos.Count; i++)
            {
                if (textos[i][0] == obj)
                {
                    objeto = textos[i][2];
                }
            }
            return objeto;
        }
    }
}
